建立一個名為 Script 的資料夾
對 Assets 點擊右鍵 ➔ 選擇 Create ➔ 點選 Folder ➔ 命名為 Script
💡古古的小提醒:
養成資料分類的好習慣,未來專案變得更複雜時,才不會找不到想要的東西喔!
新增一個 C# Script
對 Script 資料夾 點擊右鍵 ➔ 選擇 Create ➔ 點選 C# Script ➔ 命名為 Hello
古古的小提醒:
在 Unity 中,為已建立好的 C# Script 重新命名較為麻煩,因此在最初進行命名時,盡量一次到位,以免出錯。
開啟 Visual Studio 編輯器
雙擊 Hello 腳本 ➔ 自動跳轉至 Visual Studio 編輯器
➔ 檢查程式碼 public class Hello : MonoBehaviour 中的 Hello( 腳本名稱 )呈藍綠色即為成功
古古的課程補充:
若雙擊腳本時無法成功開啟編輯器,可以按照以下方式進行檢查
於視窗頂端工具列中點擊 Unity ➔ 點選 Settings ➔ 選擇 External Tools( 外部工具 )
➔ 於 External Script Editor 欄位中選擇 Visual Studio ➔ 點擊 Regenerate project files
➔ 最後再重新開啟一次編輯器就可以囉!
若是開啟編輯器後沒有 auto complete 的功能,也可以透過上述方法解決喔~
✦ using
◌ 代表使用哪些 Library( 函式庫 ),如同使用工具箱的概念。
◌ 撰寫方式為 using + 命名空間。
✦ public
◌ 是類型和類型成員的存取修飾詞,意指 未限制存取 ,大家都可以取用。
✦ class
◌ 用於宣告類別 。
✦ MonoBehaviour
◌ 代表繼承 MonoBehaviour 這個類別。
◌ 擁有這個類別,就可以使用一些 Unity 專有的功能。
✦ Start( )
◌ 在第一幀畫面渲染出來( Update )之前,執行 Start 括號中的程式碼,並且 只執行一次 。
◌ 通常會在 Start 的程式裡面 設定遊戲初始值 ,將資料進行初始化(initialize)。
✦ Update( )
◌ Update 中的程式碼,在遊戲開始後,畫面 每更新一幀,都會執行一次 。
◌ 通常會將需要不斷進行判斷或執行的程式放在 Update 裡面。
✦ //
◌ 寫在雙斜線後的文字,皆為註解,將 不影響程式執行 。
撰寫 Debug.Log( ) 的資料,查看此工具在 Start 中使用的結果
在 void Start( ) 的 { } 中 輸入 Debug.Log("start!");
➔ 儲存檔案
📝 古古的課程補充:
Debug.Log( ) 可將放入 雙引號 中的資料 print 出來,並用於確認程式執行是否有誤。
將腳本放入遊戲物件中
回到 Unity 視窗 ➔ 將 Hello 腳本拖曳至 Cube 的 Inspector 介面中
出現 藍線 + 游標呈連結狀 即可放開
呈現此畫面即成功插入腳本!
💡古古的小提醒:
回到 Unity 後,若視窗左下角沒有出現紅字警告的話,就代表程式無誤,可正常執行。
反之,若出現紅字警告,則可按照文字提示,回到編輯器中檢查並修正錯誤。
執行程式,確認是否順利印出結果
點擊 播放 ➔ 查看視窗左下角是否跳出 start! 字樣 ➔ 點擊 start! ➔ 跳出 Console 視窗
Console 視窗中也應當印出 start! 的結果
📝 古古的課程補充:
➊ 在 Console 視窗中 點擊 結果訊息,可 查看程式碼路徑 。
➋ 在 Console 視窗中 雙擊 結果訊息,會直接 跳轉回編輯器並指出該行程式碼 。
重複上述步驟,查看此工具在 Update 中使用的結果
在 void Update( ) 的 { } 中 輸入 Debug.Log("Update");
➔ 儲存檔案
執行程式,查看印出結果
點擊 播放 ➔ 視窗左下角跳出 Update 字樣 ➔ 點擊 Console ➔ Console 視窗中不斷印出 Update
Console 視窗中印出無限多個 Update 的結果
📝 古古的課程補充:
➊ 在 Console 視窗中 點擊 Clear,可 清除所有結果 。
➋ 在 Console 視窗中 點擊 Collapse,可 將相同資料收納至一個結果中 。
增加 if 條件判斷式,使 Update 中的程式碼根據條件執行
在 void Update( ) 的 { } 中 輸入 if (Input.GetKeyDown(KeyCode.Space)) { }
➔ 在 if 條件判斷式的 { } 中 輸入 Debug.Log("Space pressed");
➔ 儲存檔案
📝 古古的課程補充:
➊ if 條件判斷式的用法為 if ( 輸入要達成的條件 ) { 達成條件後要執行的動作 }
。
➋ Input.GetKeyDown(KeyCode.Space)
意思為「按下空白鍵」。
執行程式,查看印出結果
點擊 播放 ➔ 視窗左下角跳出 start! 字樣 ➔ 按下空白鍵
➔ Console 視窗中依照空白鍵被按下的次數 ,印出相應數量的 Space pressed 字樣
💡古古的小提醒:
KeyCode 偵測英文輸入與注音輸入的編碼方式不一樣,因此在按壓鍵盤時,記得切換成 英文輸入法 才能順利偵測喔!